package com.dwxt.community.entity;

import com.fasterxml.jackson.annotation.*;
import com.fasterxml.jackson.annotation.JsonInclude.*;
import org.springframework.format.annotation.*;

import javax.validation.constraints.*;
import java.util.*;

@JsonInclude(Include.NON_NULL)
public class SupervisorUser {

    private String id;
    @Pattern(regexp = "^1[3|4|5|6|7|8|9][0-9]\\d{4,8}$")
    private String phone;
    @NotBlank
    private String username;
    @NotBlank
    private String workId;

    private String password;
    private String newPassword;


    @NotBlank
    private String roleId;
    @Pattern(regexp = "^[1-9]\\d{5}(18|19|20|(3\\d))\\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\\d{3}[0-9Xx]$")
    private String idCard;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    private String superiorId;

    private Integer sumUpDoorPropaganda = 0;

    private Integer fullBinNum;


    private Integer useing;

    public Integer getFullBinNum() {
        return fullBinNum;
    }

    public void setFullBinNum(Integer fullBinNum) {
        this.fullBinNum = fullBinNum;
    }

    public Integer getUseing() {
        return useing;
    }

    public void setUseing(Integer useing) {
        this.useing = useing;
    }

    public String getNewPassword() {
        return newPassword;
    }

    public void setNewPassword(String newPassword) {
        this.newPassword = newPassword;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id == null ? null : id.trim();
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone == null ? null : phone.trim();
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username == null ? null : username.trim();
    }

    public String getWorkId() {
        return workId;
    }

    public void setWorkId(String workId) {
        this.workId = workId == null ? null : workId.trim();
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password == null ? null : password.trim();
    }

    public String getRoleId() {
        return roleId;
    }

    public void setRoleId(String roleId) {
        this.roleId = roleId == null ? null : roleId.trim();
    }

    public String getIdCard() {
        return idCard;
    }

    public void setIdCard(String idCard) {
        this.idCard = idCard == null ? null : idCard.trim();
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public String getSuperiorId() {
        return superiorId;
    }

    public void setSuperiorId(String superiorId) {
        this.superiorId = superiorId == null ? null : superiorId.trim();
    }

    public Integer getSumUpDoorPropaganda() {
        return sumUpDoorPropaganda;
    }

    public void setSumUpDoorPropaganda(Integer sumUpDoorPropaganda) {
        this.sumUpDoorPropaganda = sumUpDoorPropaganda;
    }
}